package com.wyw.design.model.learning.behavioral.mediator;

/**
 * @Title
 * @Description 中介者模式的引入，其实就是为了解决系统对象相互依赖调用的情况，可以想象一下，使用中介者模式后，原本的错综复杂的网络结构就会变成以中介者为中心的网状结构，这是中介者模式要解决的问题。
 * @Author Mr Wu yewen.wu.china@gmail.com
 * @Date 2023/4/18 10:52
 * Update History:
 * Author        Time            Content
 */
public class MediatorClient {
    public static void main(String[] args) {
        // 定义一个中介者
        MeditorCompany meditorCompany = new MeditorCompanyBeiKe("贝克找房");
        // 定义一个卖家一个买家同事类
        ColleagueSeller colleagueSeller = new ColleagueSeller(meditorCompany);
        ColleagueBuyer colleagueBuyer = new ColleagueBuyer(meditorCompany);

        // 给中介公司注册买家、卖家
        meditorCompany.setBuyer(colleagueBuyer);
        meditorCompany.setSeller(colleagueSeller);

        // 操作
        colleagueSeller.send("卖家发布需求...");
        colleagueBuyer.send("买家发布需求...");
    }
}
